home *** CD-ROM | disk | FTP | other *** search
-
-
-
- Zchess System Configuration Example
- Zchess Version 1.7
- February 11, 1996
-
- This is an example configuration for Zchess specifically for Synchronet
- BBS, DIGITAL DYNAMICS. If you wish to try Synchronet on a shareware
- basis, you can get a copy from the SBBS support BBSes listed for
- Zchess. While I do not personally run a BBS, I have set a few of them
- up for the purpose of developing doors. I have found that Synchronet
- was easy to use by both the sysop and the user. You can purchase SBBS
- from the following address:
-
- Digital Dynamics
- PO Box 501, Yorba Linda, CA 92686
- (714) 529-6328 Voice
- (714) 529-9721 FAX
-
-
- The Zchess chess door system consists of the following executables:
-
-
- ZCHESS.EXE
- 2PGN. EXE
- IMPORT.EXE
- MAINT.EXE
- NETCHESS.EXE
- SETUP.EXE
-
- Of these, a complete SBBS setup will include configuration for
- ZCHESS.EXE for the door, ZCHESS.EXE for a notification logon event,
- MAINT.EXE as a daily or weekly event, and NETCHESS.EXE twice, once for
- OUTgoing messages and once for INcomming messages. 2PGN.EXE is
- executed from either ZCHESS or MAINT, and normally won't have other
- uses. IMPORT.EXE is intended to be run by the sysop who is attempting
- to make changes to the database. SETUP.EXE is run by the sysop who is
- making changes to the ZCHESS or NETCHESS configurations.
-
- The following setups represent one way that Zchess can be configured.
- Each system may differ. These screens were captured from the actual
- configuration of an SBBS setup.
-
- ZCHESS As A Chess Door and It's Your Move Notifier:
-
-
- ░░░░╔═════════════════════╗░░░░╔═══════════════════════════════════════════╗░░░
- ░░░░║ External Programs ║░░░░║ Games Online Programs ║░░░
- ░░░░╠═════════════════════╣░░░░╠═══════════════════════════════════════════╣░░░
- ░░░░║ │Fixed Events ║░░░░║ │ZCHESS ║░░░
- ░░░░║ │Timed Events ║░░░░║ │ZCHESS NOTIFY ║░░░
- ░░░░║ │Global Swap List ║░░░░║ │ ║░░░
- ░░░░║ │Ext╔════════════════════╚═══════════════════════════════════════════╝░░░
- ░░░░║ │Onl║ Games Program Section ║░░░░░░░░░
- ░░░░╚═════╠══════════════════════════════════════════════════════════╣░░░░░░░░░
- ░░░░░░░░░░║ │Name Games ║░░░░░░░░░
- ░░░░░░░░░░║ │Internal Code GAMES ║░░░░░░░░░
- ░░░░░░░░░░║ │Access Requirements ║░░░░░░░░░
- ░░░░░░░░░░║ │Available Online Programs... ║░░░░░░░░░
- ░░░░░░░░░░╚══════════════════════════════════════════════════════════╝░░░░░░░░░
- ░░░░╔═══════════════════════════════════════════╗░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
- ░░░░║ Online Program Sections ║░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
- ░░░░╠═══════════════════════════════════════════╣░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
- ░░░░║ │Main ║░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
- ░░░░║ │Games ║░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
- ░░░░║ │ ║░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
- ░░░░╚═══════════════════════════════════════════╝░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
-
- The Chess DOOR can be configured as given below. Zchess uses only
- DOOR.SYS drop files. Also, Zchess was not developed with SBBS's XTRN
- libraries. As such, it has it's own communications routines. You must
- configure SBBS to NOT intercept I/O interrupts. It is not essential to
- force the system to change directories to Zchess, as Zchess will be
- able to find all of its subdirectories based on the location of the
- executable. Zchess is always a multi-node chess door. If your BBS is
- multinodal, configure the Multiple Concurrent Users as YES. If you
- have only a single node version of Zchess, but have a multi-tasker
- available and would like to play chess againt remote callers, you may
- either run Zchess in a separate window using \ZCHESS\LOCAL.BAT.
- Alternatively, you may share a session with a user while playing games
- by pressing F6 after the user enteres a Game.
-
- ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
- ░░░░╔═════╔══════════════════════════════════════════════════════════╗═════╗░░░
- ░░░░║ Ext║ ZCHESS ║ ║░░░
- ░░░░╠═════╠══════════════════════════════════════════════════════════╣═════╣░░░
- ░░░░║ │Fix║ │Name ZCHESS ║ ║░░░
- ░░░░║ │Tim║ │Internal Code ZCHESS ║ ║░░░
- ░░░░║ │Glo║ │Start-up Directory C:\ZCHESS ║ ║░░░
- ░░░░║ │Ext║ │Command Line ZCHESS %f ║═════╝░░░
- ░░░░║ │Onl║ │Clean-up Command Line ║░░░░░░░░░
- ░░░░╚═════║ │Execution Cost None ║░░░░░░░░░
- ░░░░░░░░░░║ │Access Requirements ║░░░░░░░░░
- ░░░░░░░░░░║ │Execution Requirements ║░░░░░░░░░
- ░░░░░░░░░░║ │Multiple Concurrent Users Yes ║░░░░░░░░░
- ░░░░░░░░░░║ │Intercept I/O Interrupts No ║░░░░░░░░░
- ░░░░░░░░░░║ │Swap BBS out of Memory No ║░░░░░░░░░
- ░░░░╔═════║ │Modify User Data No ║░░░░░░░░░
- ░░░░║ ║ │Execute on Event No ║░░░░░░░░░
- ░░░░╠═════║ │BBS Drop File Type (R) GAP DOOR.SYS ║░░░░░░░░░
- ░░░░║ │Mai║ │Place Drop File In Node Directory ║░░░░░░░░░
- ░░░░║ │Gam║ │Time Options... ║░░░░░░░░░
- ░░░░║ │ ╚══════════════════════════════════════════════════════════╝░░░░░░░░░
- ░░░░╚═══════════════════════════════════════════╝░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
-
- The notifier provides a simple message is the user is active in chess
- and has a move in one of his games. Configuring zchess as a logon
- event will remind players to visit the door. If the user isn't active
- in chess, or doesn't have a move, the notifier will be all but
- invisible.
-
- ░░░░╔═════╔══════════════════════════════════════════════════════════╗═════╗░░░
- ░░░░║ Ext║ ZCHESS NOTIFY ║ ║░░░
- ░░░░╠═════╠══════════════════════════════════════════════════════════╣═════╣░░░
- ░░░░║ │Fix║ │Name ZCHESS NOTIFY ║ ║░░░
- ░░░░║ │Tim║ │Internal Code ZCNOTIFY ║ ║░░░
- ░░░░║ │Glo║ │Start-up Directory C:\ZCHESS ║ ║░░░
- ░░░░║ │Ext║ │Command Line ZCHESS %f NOTIFY ║═════╝░░░
- ░░░░║ │Onl║ │Clean-up Command Line ║░░░░░░░░░
- ░░░░╚═════║ │Execution Cost None ║░░░░░░░░░
- ░░░░░░░░░░║ │Access Requirements ║░░░░░░░░░
- ░░░░░░░░░░║ │Execution Requirements ║░░░░░░░░░
- ░░░░░░░░░░║ │Multiple Concurrent Users Yes ║░░░░░░░░░
- ░░░░░░░░░░║ │Intercept I/O Interrupts No ║░░░░░░░░░
- ░░░░░░░░░░║ │Swap BBS out of Memory No ║░░░░░░░░░
- ░░░░╔═════║ │Modify User Data No ║░░░░░░░░░
- ░░░░║ ║ │Execute on Event Logon ║░░░░░░░░░
- ░░░░╠═════║ │BBS Drop File Type (R) GAP DOOR.SYS ║░░░░░░░░░
- ░░░░║ │Mai║ │Place Drop File In Node Directory ║░░░░░░░░░
- ░░░░║ │Gam║ │Time Options... ║░░░░░░░░░
- ░░░░║ │ ╚══════════════════════════════════════════════════════════╝░░░░░░░░░
- ░░░░╚═══════════════════════════════════════════╝░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
-
- The example above allows the notifier to be run as an external program
- as well. If the Execute on Event flag is changed to Logon, Only, it
- will not appear in the External programs menu.
-
- Note that for both the ZCHESS and the NOTIFIER, you want to try to run
- without swapping the BBS out of Memory if at all possible. This will
- save some time when starting and exiting the door. I am able to run
- ZCHESS in a DesqView window with about 300K memory available. If you
- can't provide this much memory without swapping SBBS out, then you
- don't have a choice. You might wish to consider not using the notifier
- in this case, as users often dislike unnecessary delays during login.
-
-
-
- Timed Maintenace Events
-
- NETCHESS and MAINT should be configured as timed events. NETCHESS will
- be available for version 2.0 and above. Those registering Zchess 1.7
- and above now will be allowed to Beta test NETCHESS now if they so
- choose.
-
- ░░░░╔═════════════════════╗░░░░╔═══════════════════════════════════════════╗░░░
- ░░░░║ External Programs ║░░░░║ Timed Events ║░░░
- ░░░░╠═════════════════════╣░░░░╠═══════════════════════════════════════════╣░░░
- ░░░░║ │Fixed Events ║░░░░║ │MSGMAINT %!smbutil mp500 *.shd ..\ma║░░░
- ░░░░║ │Timed Events ║░░░░║ │ZCNETOUT NETCHESS.EXE OUT ║░░░
- ░░░░║ │Global Swap List ║░░░░║ │ZCNETIN NETCHESS.EXE IN ║░░░
- ░░░░║ │External Editors ║░░░░║ │ZCMAINT MAINT.EXE ║░░░
- ░░░░║ │Online Programs ║░░░░╚═══════════════════════════════════════════╝░░░
- ░░░░╚═════════════════════╝░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
- ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
-
- For this example NETCHESS.EXE is used twice in the Timed Events
- list. It can be configured for a single event by NOT adding the
- commandline switches of OUT or IN. Netchess, if not restricted,
- with then do all of the processing for incomming messages, then all
- of the processing for outgoing messages. Its used twice here to
- accomodate the following sequence of events:
-
- 1. NETCHESS OUT is called just after midnight, creating messages that
- will be retrieved by BBSes calling in during the night.
-
- 2. BBSes call in between 2:00 AM and 5:00 AM, retrieve their messages
- and post new ones. The messages of course are created by ZCHESS, and
- contain the moves for the games.
-
- 3. NETCHESS IN is called after 6:00 AM. Messages left by other BBSes
- are found, and games are updated. No new messages are created since
- players have not yet had a chance to move.
-
- 4. MAINT.EXE is called after NETCHESS IN. This performs any
- maintenance required, rebuilds that data base, and keeps everything
- fresh.
-
- Note that it might be propper to call netchess with no switches
- instead of NETCHESS OUT. Should there be any updates to games in the
- database, it might prevent unnecessary game reporting. This timing
- depends on what BBSes call, act as a hub, the frequency of calls, etc.
- so your configuration will likely be a bit different to optimize
- communications.
-
-
- ░░░░╔═════════════════════╗░░░░╔═══════════════════════════════════════════╗░░░
- ░░░░║ External Programs ║░░░░║ Timed Events ║░░░
- ░░░░╠═════════════════════╣░░░░╠═══════════════════════════════════════════╣░░░
- ░░░░║ │Fixed Events ║░░░░║ │MSGMAINT %!smbutil mp500 *.shd ..\ma║░░░
- ░░░░║ │Timed Events ║░░░░║ │ZCNETOUT NETCHESS OUT ║░░░
- ░░░░║ │Global Swap List ║░░░░║ │ZCNETIN NETCHESS IN ║░░░
- ░░░░║ │External Editors ║░░░░║ │ZCMAINT MAINT.EXE ║░░░
- ░░░░║ │Online Programs ║░░░░╚═══════════════════════════════════════════╝░░░
- ░░░░╚═════════════════════╝░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
- ░░░░░╔════════════════════════════════════════════════════════════════════╗░░░░
- ░░░░░║ ZCNETOUT Timed Event ║░░░░
- ░░░░░╠════════════════════════════════════════════════════════════════════╣░░░░
- ░░░░░║ │Internal Code ZCNETOUT ║░░░░
- ░░░░░║ │Start-up Directory C:\ZCHESS ║░░░░
- ░░░░░║ │Command Line NETCHESS.EXE OUT ║░░░░
- ░░░░░║ │Execution Node 1 ║░░░░
- ░░░░░║ │Execution Days Sun Mon Tue Wed Thu Fri Sat ║░░░░
- ░░░░░║ │Execution Time 01:00 ║░░░░
- ░░░░░║ │Requires Exclusive Execution No ║░░░░
- ░░░░░║ │Force Users Off-line For Event No ║░░░░
- ░░░░░╚════════════════════════════════════════════════════════════════════╝░░░░
-
- NETCHESS is started sometime after users stop calling in. It is run
- daily. This configuration does not require exclusive access. Note,
- however, if you have a user on another node who is playing ZCHESS,
- NETCHESS will pause this node until the user finishes, with a limit of
- fifteen minutes. If NETCHESS is not able to monopolize the ZCHESS
- system ( including ZCHESS.EXE, MAINT.EXE and other copies of
- NETCHESS.EXE), the output for that night will not be generated. See
- ZCHESS.DOC for information about how system monopolies are enforced.
-
-
-